# *-*- coding:utf-8 -*-
# @Author  : Eliza
# @Time    : 2021/7/18 14:10
# @Software : RubyMine

# 定义
puts require 'Set' #使用 Set 之前需要先写
set01 = Set.new([1, 2, 3, 6])
set02 = Set.new([2, 3, 4, 5]) # ()里面放一个数组即可

puts set01 #<Set: {1, 2, 3, 6}>

puts set02 #<Set: {2, 3, 4, 5}>
#difference:set01 -set01 * set02
puts set01 - set02 #<Set: {1, 6}>

puts set02 - set01 #<Set: {4, 5}>

#并集:set01 +set02
puts set01 + set02 #<Set: {1, 2, 3, 6, 4, 5}>

# 交集 取出公共部分

puts set01 & set02 #<Set: {2, 3}>
# 异或
# 可以看作是 并集 减去 共同部分
puts set01 ^ set02 #<Set: {4, 5, 1, 6}>

# 是否为子集
puts (set01 & set02) <= set02 #true
